【Python】 unicode转中文

您所在的位置:网站首页 u4f60 u4e2a u50bb u903c是什么意思 【Python】 unicode转中文

【Python】 unicode转中文

2024-07-01 04:48| 来源: 网络整理| 查看: 265

汉字前面加个u就可以把汉字转换成unicode编码格式

In [1]: s = u"学海无涯,回头是岸" In [2]: s Out[2]: u'\u5b66\u6d77\u65e0\u6daf\uff0c\u56de\u5934\u662f\u5cb8' In [3]: print(s) 学海无涯,回头是岸

在爬虫抓取网页信息时常需要将类似’\u82e6\u6d77\u65e0\u6daf\u56de’转换为中文,实际上这是unicode的中文编码。 可用以下方法转换(注意一个前面有u一个没有):

In [1]: s = '\u82e6\u6d77\u65e0\u6daf\u56de\u5934\u662f\u5cb8' In [2]: print(s.decode("unicode_escape")) 报错===》 AttributeError: 'str' object has no attribute 'decode' In [3]: print(s.encode("utf-8").decode("unicode_escape")) 苦海无涯回头是岸 In [7]: s = u'\u82e6\u6d77\u65e0\u6daf\u56de\u5934\u662f\u5cb8' In [8]: print(s) 苦海无涯回头是岸

在python2的字符编码问题时常会遇到“UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-5: ordinal not in range(128)”的编码错误。可以用以下方法通常可以解决:

import sys reload(sys) sys.setdefaultencoding('utf-8') 此方法是将Python2的默认编码ASCII改为 utf-8。但此方法不是一劳永逸的,可能会使一些代码的行为变得怪异


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3